package com.paradogs.gs.misc;

/**
 * @author: yumi
 * @date: 2024/10/15  18:42
 * @Description: TODO
 */
public interface IDataManager<R, E> extends IManager {

    /** 初始化数据 */
    void onInitialization(R data);

    /** 获得克隆后的数据 */
    R __get__();

    /** 获得数据 */
    R __raw__();

    /** 更新数据 */
    default void __update__(E data) {}

    /** 将数据持久化到数据库 */
    void save2DB();

    /** 同步所有数据到 SyncDataUpdater */
    default void syncAll() {}

}
